#!/bin/bash
	
echo "#####字符串基础"

var1="string"
var2='string'
var3=string
var4="other"

echo "${var1}"
echo "${var2}"
echo "${var3}"

var5="${var1}""${var4}"
echo "${var5}"

echo "${#var5}"

echo "#####字符串截取"

var1="kuso no money kusosun"

echo "${var1}"
echo "${var1:2:10}"
echo "${var1:2}"
echo "${var1:0-10:3}"
echo "${var1:0-10}"

var1="kusoash no money kuso a shit"

echo "${var1}"
echo "${var1#kuso}"
echo "${var1#ash}"
echo "${var1#*so}"
echo "${var1##*so}"

echo "${var1%shit}"
echo "${var1%so*}"
echo "${var1%sh}"
echo "${var1%%sh*}"

temp=newString
echo "temp length is :" ${#temp}
var=1234567890abcdefabcde

# 指定长度
echo ${var:2:7} #输出3456789,从第二个位置开始截取7位
echo ${var:2} #输出34567890,从第二个位置截取到末尾
echo ${var:0-11:2} #输出ab,从右边开始数到第11位也就是0,往右截取2位

#指定字符串
# 匹配时匹配的是一整个字符串.
## 使用#截取右边的
# 使用一个井号#遇到匹配的字符串就直接开始截取,不会找后面是否还有匹配的
# 使用两个井号##后匹配到最后一个才开始截取
echo ${var#*0a} #输出 bcdefabcde
echo ${var#34} #输出 1234567890abcdefabcde ,匹配的是整字符串,以34开头匹配不到
echo ${var#123} #输出 4567890abcdefabcde
echo ${var##*a} #输出 bcde


## 使用%截取左边的
# 使用一个百分号%遇到匹配的字符串就直接开始截取,不会找后面是否还有匹配的
# 使用两个百分号%%后匹配到最后一个才开始截取
echo ${var%34*} #输出 12
echo ${var%cd} #输出 1234567890abcdefabcde,匹配的是整字符串,以cd结尾匹配不到
echo ${var%cde} #输出 1234567890abcdefab
echo ${var%%ab*} #输出 1234567890
